// 防抖 (防止抖动) 定时器 节流
//  0 防抖 一般 输入框中防止重复输入 重复发送请求
//  1 节流 一般 是用在页面下拉和上拉

import {request} from '../../request/index.js'
Page({
    data: {
        goods:[],
        isFocus:true,
        // 输入框输入的值
        inpValue:''
    },
    TimeId:-1,
    // 输入框的值改变就会触发的事件
    handleInput(e){
        // 1 获取输入框的值
        const {value}=e.detail
        // 2 检测合法性
        if(!value.trim()){
            this.setData({
                goods:[],
                isFocus:true
            })
            // 值不合法
            return
        }
        this.setData({isFocus:false})
        // 3 准备发送请求获取数据
        clearTimeout(this.TimeId)
        this.TimeId=setTimeout(()=>{
            this.qsearch(value)
        },1000)
        

    },
    // 点击取消按钮触发的事件
    handleCancle(){
        this.setData({
            inpValue:'',
            isFocus:true,
            goods:[]
        })
    },
    // 发送请求获取搜索建议数据
    async qsearch(query){
        const res=await request({url:'/goods/qsearch',data:{query}})
        console.log(res);
        this.setData({
            goods:res
        })
    }

})